package com.cy.pj.module.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class ModelViewController {


    /**
     * 业务场景：
     *---客户端向服务端发起一个请求，服务端处理完请求以后，直接将响应数据封装到model中，然后和view一起响应到客户端
     * 问题分析：
     * ---1》在这种应用实现过程中，假如controller处理数据的时间比较长，会直接影响响应页面的响应时长，给用户带来不好的用户体验
     * ---2》在当前大前端高速发展的过程中，各种端百花齐放，有些端可能只需要服务端的数据，但不需要服务端的页面
     *
     * 说明：---很多中小型企业内部的管理系统直接就是SpringBoot+Thymeleaf技术进行实现
     */

    @RequestMapping("/doModelAndView02")

//    @RequestMapping("/doModelAndView")
//    public String doModelAndView(Model model){//参数model由spring web模块创建，可以存储一些数据
    public ModelAndView doModelAndView(){

        ModelAndView mv = new ModelAndView();
        mv.addObject("username","dcm.");
        mv.addObject("state","enable");
        mv.setViewName("view");
        return mv;

//        model.addAttribute("username","dcm");
//        model.addAttribute("state","enable");
//        return "view";
        //我们这里的响应结果，在spring mvc中会帮我们封装为ModelAndView对象
    }
}
